<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //1. 模板字符串  ： ``声明字符串  ${}插值表达式 ：可以接收简单的运算；
        // let flag = true;
        // document.onclick = function(){
        //     flag = !flag;
        //     let str = `<h1>
        //         我的名字是${flag?'张三':'李四'}
        //         </h1>`;
        //     document.body.innerHTML = str;
        // }
       

        // 2.展开运算符 ： ... 
        // 1.数组的展开；
        // var arr = [1,3,4,6,2];
        // var res =  Math.max(...arr);
        // console.log(res);
        // 2.合并数组 
        // var arr1 = [1,2,3];
        // var arr2 = [2,3,4];
        // // var res =  arr1.concat(arr2);
        // // console.log(res);
        // var res = [...arr1,...arr2];
        // console.log(res);

        // 3.把伪数组转成数组；
        // function fn(){
        //     var arg = arguments;
        //     console.log(arg);
        //     let arr = [...arg];
        //     console.log(arr);
        // }
        // fn(1,2,3);

        // 4.参数的展开 ；rest参数 ，处理不定参数；
        function fn(){  // 通过 rest来接收不定参数；
            // console.log(args);
            var args = arguments;
            // 执行回调函数
            args[args.length-1] && args[args.length-1]();
        }


        // ES6

        // function fn(...args){  // 通过 rest来接收不定参数；
        //     // console.log(args);
        //     // 执行回调函数
        //     args[args.length-1] && args[args.length-1]();
        // }

        fn(1,2,function(){
            console.log("回调1")
        });

        fn(1,function(){
            console.log("回调2")
        })


    </script>
</body>
</html>